home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / modelers / geomview / sgi.lha / Geomview / man / cat1 / linkmover.1 < prev    next >
Text File  |  1993-10-31  |  8KB  |  265 lines

  1.  
  2.  
  3.  
  4. linkmover(l)        Geometry Project Programs         linkmover(l)
  5.  
  6.  
  7. NAME
  8.        linkmover  -  evolve  a    knot or    link in    three-dimensional
  9.        space.
  10.  
  11. SYNOPSIS
  12.        linkmover [ -p parameterfile ] [    -?  ] [    linkfile ]
  13.  
  14. DESCRIPTION
  15.        Linkmover runs in conjuction with geomview to display  the
  16.        evolution of a knot or link in three-dimensional    Euclidean
  17.        space.  The program when    invoked    without    a filename  argu-
  18.        ment comes up with a default choice of link, the    borromean
  19.        rings.  Other knots can be loaded as  command  line  argu-
  20.        ments,  in  the link format (see    'man 5 link').    (The Next
  21.        version allows these files to be    loaded from  a    browser.)
  22.        The  evolution of the link is controlled    by a set of slid-
  23.        ers each    attached to one    parameter of the  dynamical  sys-
  24.        tem.   There  are  also a set of    toggles    which control the
  25.        display of the system and other options.
  26.  
  27. MATHEMATICAL DESCRIPTION
  28.        The evolution of    the link is governed by    a dynamical  sys-
  29.        tem consisting of repelling and straightening forces.  The
  30.        link is represented as a    set of discrete    points and  these
  31.        points  act  on each other to create a vector field on the
  32.        link.  Each point is moved in the direction of this vector
  33.        field  to give the next state of    the system.  By    adjusting
  34.        these forces as the system evolves, the    user  can  direct
  35.        the evolution in    the manner he chooses.     Parameters which
  36.        govern this dynamical system are    available to the user via
  37.        labeled sliders.
  38.  
  39. COMMAND-LINE ARGUMENTS (SGI only)
  40.        -p     Load  named  parameter file (previously saved using
  41.           the  "Save"  command  noted  below)  to  initialize
  42.           parameter    values.
  43.  
  44.        -?     Print out    usage message.
  45.  
  46. SLIDERS
  47.        R2     This  is    the  coefficient  of  the  inverse square
  48.           repulsive    law which is the primary repulsive force.
  49.           The  inverse  square repulsion is    computed  between
  50.           each pair    of points A and    B, except under    the  con-
  51.           dition  described    in 'Cut' below,    or if A    and B are
  52.           close neighbors on a single component of the  link.
  53.           A     force    proportional to    R2 in the opposite direc-
  54.           tion from    B is added to A's force    vector,    and vice-
  55.           versa.   If  A  and  B are sufficiently close, this
  56.           repulsion    is actually computed to    lie in the direc-
  57.           tion  of    the  common  perpendicular to the pair of
  58.           line segments adjoining A    and B which  are  closest
  59.           to each other.
  60.  
  61.  
  62.  
  63.  
  64.               Date:    92/08/26            1
  65.  
  66.  
  67.  
  68.  
  69.  
  70. linkmover(l)        Geometry Project Programs         linkmover(l)
  71.  
  72.  
  73.        R3     There  is     an  inverse  cubic repulsion computed in
  74.           exceptional  cases  when    two  points  come   close
  75.           together.      It  does  not    always succeed in pushing
  76.           the two points apart.
  77.  
  78.        Str    Another set of forces at each point P arises from    a
  79.           straightening  tendency, which is    modeled    by simply
  80.           computing    the weighted average  of  the  points  in
  81.           small  neighborhood of P,    and taking the difference
  82.           vector to    the current location to    P.  This  process
  83.           is  unstable  if    the  velocity  slider  (see 'Vel'
  84.           below) times Str    is  greater  than  1.    The  link
  85.           begins  to  undergo  a  strong  oscillation in this
  86.           case.
  87.  
  88.        Cut    This parameter determines     a  region  of    interest.
  89.           Points  which lie    beyond this distance to    the given
  90.           point are    assumed     not  to  influence  this  point.
  91.           Setting  this  to     a  small number can speed up the
  92.           computation by skipping many of the repulsion  cal-
  93.           culations.
  94.  
  95.        Seg    This controls the    segment     length    of the curves.    A
  96.           large value reduces the number of     points     used  to
  97.           sample  the  curve,  speeding up the calculation;    a
  98.           small value has the opposite effect.  (but see BUGS
  99.           below).
  100.  
  101.        Vel    This  stands  for    velocity, and determines the time
  102.           step to use in the  evolution.   Making  it  larger
  103.           will  speed  up  the  computation    at the expense of
  104.           possible    overshoot  or  instability   (see   'Str'
  105.           above).
  106.  
  107.        Rad    This  is    a  display parameter which determines the
  108.           radius of    tubes used to  represent  the  curve  (if
  109.           tubing  is turned    on), and also the scaling used to
  110.           draw the vector fields when they are displayed.
  111.  
  112. TOGGLES
  113.        The Next    version    allows toggle access on    the  main  panel,
  114.        while the SGi version uses the menu or keyboard.
  115.  
  116.        There are a set of 4 toggles to turn on and off display of
  117.        vector fields:
  118.  
  119.        Showrepulsion
  120.           Show the repulsive vector    field at each point.  The
  121.           displayed    color is yellow.
  122.  
  123.        Showstraightening
  124.           Show  the    straightening vector field at each point.
  125.           The displayed color is blue.
  126.  
  127.  
  128.  
  129.  
  130.               Date:    92/08/26            2
  131.  
  132.  
  133.  
  134.  
  135.  
  136. linkmover(l)        Geometry Project Programs         linkmover(l)
  137.  
  138.  
  139.        Showall
  140.           Show the sum of  the  repulsive  and  straightening
  141.           vector fields, in    white.
  142.  
  143.        Showpush
  144.           When  two     points     come  within a    small distance of
  145.           each other, (determined  by  the    segment     length),
  146.           this  causes a red line segment to be drawn between
  147.           them, as a warning to the    user that the curves  are
  148.           threatening to cross each    other.    This is    not tech-
  149.           nically a    vector field but is included  here  since
  150.           it behaves much the same way.
  151.  
  152.        The other toggles include:
  153.  
  154.        Showspheres
  155.           Not  currently  implemented,  but     would    show  the
  156.           points of    the curves as small spheres.
  157.  
  158.        Showtubes
  159.           Put a tube around    the link, whose    radius is propor-
  160.           tional to    the radius parameter.
  161.  
  162.        Rigor  Attempt  to  guarantee that the evolution    preserves
  163.           the topological type of the link.      This    seems  to
  164.           work,  primarily    by  grinding  the  evolution to    a
  165.           halt.
  166.  
  167.        Stop   Temporarily halt the evolution.
  168.  
  169. OTHER COMMANDS
  170.        Save   On the SGI's, this menu item will    save the  current
  171.           state  of     the  sliders  and  toggles into the file
  172.           slider.dat in the    current    directory.  This file can
  173.           be  later     reloaded  into     linkmover using the '-p'
  174.           command line option.
  175.  
  176. RELATED    PROGRAMS
  177.        LinkTool, a Geometry Center NextStep application,  can  be
  178.        used to draw link diagrams.  Choosing the '3D' file format
  179.        on the save  command will yield a .lnk file which  can  be
  180.        read into linkmover.
  181.  
  182. FILES
  183.        Example    link files are to be found in the OOGL release in
  184.        ${GEOM}/data/links.     Source         code      is      in
  185.        ${GEOM}/src/bin/linkmover.     where    e.g.,    GEOM    =
  186.        /u/gcg/ngrap.
  187.  
  188. SEE ALSO
  189.        link(5)
  190.  
  191. AUTHORS
  192.        Charlie Gunn, based on an original  MacIntosh  version  by
  193.  
  194.  
  195.  
  196.               Date:    92/08/26            3
  197.  
  198.  
  199.  
  200.  
  201.  
  202. linkmover(l)        Geometry Project Programs         linkmover(l)
  203.  
  204.  
  205.        Matt  Grayson.  Charlie Gunn        |    The Geometry Cen-
  206.        ter   |     gunn@geom.umn.edu
  207.                 |    1300 S.    2nd St.
  208.                 |    Minneapolis, MN     55454
  209.  
  210. BUGS
  211.        The Next    version    and the    SGI versions are slightly differ-
  212.        ent.   The  Next    version    allows loading of different links
  213.        while running.  The command line    arguments only    apply  to
  214.        the  iris  version.   The  names    of the sliders in the SGI
  215.        version are labeled in full.
  216.  
  217.        Add picking so that the user can    pull  on  pieces  of  the
  218.        link to untangle    them.
  219.  
  220.        The link    can change topological type without noticing.
  221.  
  222.        The  repulsive  parameters  are    sensitive  to the segment
  223.        length parameter, but the straightening    parameter  isn't.
  224.        That  is,  more    points will tend to magnify the    repulsive
  225.        tendency    since each point contributes to    this, while  only
  226.        a fixed number contribute to the    straightening force.  The
  227.        fix is to normalize so that the    'weight'  of  all  points
  228.        sums to 1.
  229.  
  230.        The Next    version    runs only under    NextStep 3.0.
  231.  
  232.        The  Next  version has no way to    save the current settings
  233.        of the sliders for re-use.
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.               Date:    92/08/26            4
  263.  
  264.  
  265.